ensemble module
Module containing functions to interact with binary_c’s population ensemble using the binarycpython package
- class binarycpython.utils.ensemble.BinarycDecoder(*, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, strict=True, object_pairs_hook=None)[source]
- Bases: - JSONDecoder- Custom decoder to transform the numbers that are strings to actual floats 
- class binarycpython.utils.ensemble.BinarycEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]
- Bases: - JSONEncoder- Encoding class function to attempt to convert things to strings. 
- binarycpython.utils.ensemble.binaryc_json_serializer(obj)[source]
- Custom serialiser for binary_c to use when functions are present in the dictionary that we want to export. - Function objects will be turned into str representations of themselves - Parameters
- obj ( - Any) – The object that might not be serialisable
- Return type
- Any
- Returns
- Either string representation of object if the object is a function, or the object itself 
 
- binarycpython.utils.ensemble.ensemble_compression(filename)[source]
- Return the compression type of the ensemble file, based on its filename extension. 
- binarycpython.utils.ensemble.ensemble_file_type(filename)[source]
- Returns the file type of an ensemble file. 
- binarycpython.utils.ensemble.ensemble_setting(ensemble, parameter_name)[source]
- Function to get the setting of parameter_name in the given ensemble, or return the default value. 
- binarycpython.utils.ensemble.extract_ensemble_json_from_string(binary_c_output)[source]
- Function to extract the ensemble_json information from a raw binary_c output string - Parameters
- binary_c_output ( - str) – raw binary_c output string
- Return type
- dict
- Returns
- JSON dictionary with the parsed ENSEMBLE_JSON data 
 
- binarycpython.utils.ensemble.format_ensemble_results(ensemble_dictionary)[source]
- Function to handle all the steps of formatting the ensemble output again. - Input:
- ensemble_dictionary: dictionary containing all the ensemble results 
 
- binarycpython.utils.ensemble.handle_ensemble_string_to_json(raw_output)[source]
- Function that deals with the raw output of the ensemble and creates a working JSON dictionary out of it. - Having this wrapper makes it easy to - Parameters
- raw_output – raw output of the ensemble dump by binary_c 
- Returns
- json.loads(raw_output, cls=BinarycDecoder) 
 
- binarycpython.utils.ensemble.load_ensemble(filename, convert_float_keys=True, select_keys=None, timing=False, flush=False, quiet=False)[source]
- Function to load an ensemeble file, even if it is compressed, and return its contents to as a Python dictionary. - Parameters
- convert_float_keys – if True, converts strings to floats. 
- select_keys – a list of keys to be selected from the ensemble.